package 小测试;

import java.util.Arrays;

/**
 * Created by Administrator on 2017/8/12.
 */
public class Test {
    public static void main(String[] args) {
        int test1 = test("11011110101");
        System.out.println(test1);
        int test2 = test("11111111111");
        System.out.println(test2);
        int test3=test("dad121");
        System.out.println(test3);
    }
    public static int test(String s){
        String[] strs=s.split("",0);
        if(!s.matches("[10]*")) return -1; //有非数字
        if(!s.contains("1")||!s.contains("0")) return 0;//全是相同数字0或1
        if(s.length()<1 || s.length()>50) return -1;  //长度不合法

        int max=0;  //保存01串的最大长度
        int maxTemp=0; //子串01的最大长度
        int index=1; //数组索引
        System.out.println(Arrays.toString(strs));
        for (int i = 1; i < strs.length-1; i++) {
            if (!strs[i].equals(strs[i+1])){//前后数字不同
                maxTemp+=1;
            }else{ //前后数字相同
                max=maxTemp>max?maxTemp:max; //和保存的最大值比较后，新的大，则存入
                maxTemp=0; //子串长度复位
            }
        }
        return maxTemp>max?maxTemp+1:max+1; //为避免最后计算的01子串没有和最大01串比较，需要最后补充比较！
    }
}
